<script>
	export default {
		onLaunch: function() {
			console.log('App Launch');
			// 请求权限
			this.requestPermissions();
		},
		onShow: function() {
			console.log('App Show');
		},
		onHide: function() {
			console.log('App Hide');
		},
		methods: {
			// 请求必要权限
			requestPermissions() {
				// #ifdef APP-PLUS
				if (plus.os.name.toLowerCase() === 'android') {
					// Android权限请求
					this.requestAndroidPermissions();
				} else if (plus.os.name.toLowerCase() === 'ios') {
					// iOS权限会在使用相关功能时自动请求
					console.log('iOS系统会在使用相关功能时自动请求权限');
				}
				// #endif
			},
			
			// 请求Android权限
			requestAndroidPermissions() {
				// #ifdef APP-PLUS
				// 使用 uni.requireNativePlugin 处理权限请求
				const permissionModule = uni.requireNativePlugin('permission');
				if (permissionModule) {
					// 联系人权限
					permissionModule.requestAndroidPermission('android.permission.READ_CONTACTS', (res) => {
						console.log('读取联系人权限状态:', res);
						if (res.code !== 0) { // 权限被拒绝
							uni.showModal({
								title: '提示',
								content: '需要访问联系人权限才能进行备份操作，请在设置中授予权限',
								showCancel: false
							});
						}
					});
					
					permissionModule.requestAndroidPermission('android.permission.WRITE_CONTACTS', (res) => {
						console.log('写入联系人权限状态:', res);
					});
					
					// 存储权限
					permissionModule.requestAndroidPermission('android.permission.WRITE_EXTERNAL_STORAGE', (res) => {
						console.log('写入存储权限状态:', res);
					});
					
					permissionModule.requestAndroidPermission('android.permission.READ_EXTERNAL_STORAGE', (res) => {
						console.log('读取存储权限状态:', res);
					});
				}
				// #endif
			},
			
			// 检查并请求单个权限
			checkAndRequestPermission(permission, callback) {
				// #ifdef APP-PLUS
				const permissionModule = uni.requireNativePlugin('permission');
				if (permissionModule) {
					permissionModule.isAndroidPermissionGranted(permission, (result) => {
						if (result.code !== 0) { // 没有权限
							permissionModule.requestAndroidPermission(permission, (res) => {
								if (callback) callback(res.code === 0);
							});
						} else {
							if (callback) callback(true);
						}
					});
				} else {
					if (callback) callback(false);
				}
				// #endif
				
				// #ifndef APP-PLUS
				if (callback) callback(false);
				// #endif
			}
		}
	}
</script>

<style>
	/*每个页面公共css */
	page {
		font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, 
			Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB', 'Microsoft Yahei', sans-serif;
		background-color: #F8F8FA;
		color: #333333;
		font-size: 28rpx;
	}
	
	button {
		background-color: transparent;
		padding: 0;
		margin: 0;
		border: none;
		font-size: inherit;
		line-height: inherit;
	}
	
	button::after {
		border: none;
	}
</style>
